/**  
 * All rights Reserved, Designed By www.flksh.com
 * @date:   2017-10-30 15:33:40   
 * @Copyright: 2013-2017 www.flksh.com Inc. All rights reserved. 
 * 注意：本内容仅限于上海福乐康社区养老服务有限公司内部传阅，禁止外泄以及用于其他的商业目
 */
package com.zx.cloud.persistence;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import com.zx.cloud.domain.LoanOrder;
import com.zx.cloud.MyBatisRepository;

/**
 * 借款订单表Dao
 */
@MyBatisRepository
public interface LoanOrderMapper extends CrudMapper<LoanOrder>{
     /**
      * @Description:借款管理-借款订单列表
      * @author likun
      * @Create Time: 2017年10月30日下午6:20:14
      */
	 List<LoanOrder> getLoanOrderList(LoanOrder entity) ;
	 /**
      * @Description:借款管理-借款订单列表数量
      * @author likun
      * @Create Time: 2017年10月30日下午6:20:14
      */
	 long getLoanOrderCount(LoanOrder entity) ;
	 
	  /**
      * @Description:借款管理-放款订单列表
      * @author likun
      * @Create Time: 2017年10月30日下午6:20:14
      */
	 List<LoanOrder> getLendingOrderList(LoanOrder entity) ;
	 /**
      * @Description:借款管理-放款订单列表数量
      * @author likun
      * @Create Time: 2017年10月30日下午6:20:14
      */
	 long getLendingOrderCount(LoanOrder entity) ;
	 
	 
	  /**
      * @Description:我的借款订单列表
      * @author likun
      * @Create Time: 2017年10月30日下午6:20:14
      */
	 List<LoanOrder> getMyLoanOrderList(LoanOrder entity) ;
	 /**
      * @Description:我的借款订单列表数量
      * @author likun
      * @Create Time: 2017年10月30日下午6:20:14
      */
	 long getMyLoanOrderCount(LoanOrder entity) ;
	 /**
      * @Description:借款管理-借款详情
      * @author likun
      * @Create Time: 2017年10月30日下午6:20:14
      */
	 LoanOrder getLoanOrderDetail(Long id);
	 /**
	  * @Description:借款订单申请(校验：审核中、未放款)
	  * @author likun
	  * @Create Time: 2017年11月2日下午7:19:17
	  * @param params
	  * @return
	  */
	List<LoanOrder> getLoanOrderByClientId(Map<String, Object> params);
	 
	/**
	 * @Description:首页订单信息
	 * @author likun
	 * @Create Time: 2017年11月8日上午9:22:00
	 * @param entity
	 * @return
	 */
	long getAllLoanOrderCount(LoanOrder entity);
	/**
	 * @Description:当天借款信息
	 * @author likun
	 * @Create Time: 2017年11月8日上午11:06:06
	 * @param entity
	 * @return
	 */
	long getTodayLoanOrderCount(Map<String, Object> params);
	
	
	/**
	 * @Description:当天借款信息——通过修改时间
	 * @author likun
	 * @Create Time: 2017年11月8日上午11:06:06
	 * @param entity
	 * @return
	 */
	long getTodayLoanOrderCountByUpdate(Map<String, Object> params);
	
	/**
	 * @Description:查询当天订单信息——今天审核
	 */
	long getTodayLoanOrderCountByCheck(Map<String, Object> params);
	/**
	 * @Description:查询当天订单信息——今天审核通过
	 */
	long getTodayLoanOrderCountByPass(Map<String, Object> params);
	
	/**
	 * @Description:累计放款总金额
	 * @author likun
	 * @Create Time: 2017年11月8日下午1:41:48
	 * @return
	 */
	BigDecimal getLoanAmountTotal();
	
	
	 /**
     * @Description:-放款—放款信息
     * @author likun
     * @Create Time: 2017年10月30日下午6:20:14
     */
	 LoanOrder getLoanOrderInfo(LoanOrder entity);
	 /**
	  * @Description:借款订单申请(校验：被拒40天之后才能申请)
	  * @author likun
	  * @return
	  */
	 List<LoanOrder> getRefuseLoanOrderByClientId(Map<String, Object> params);
	 
	 /**
	  * @Description:获取渠道数据
	  */
	 long   getLoanToChannel(Map<String, Object> params);
	 
	 /**
		 * @Description:根据订单号获取订单
		 * @authorzhangshuai
		 * @param orderNo 订单号
		 */
	  LoanOrder getLoanOrderByOrderNo(Map<String, String> param);
}
